1. Field of the Invention
The present invention relates to tracking and planning of business application workflows in an enterprise system, and more particularly to a system and a graphical method for tracking end-to-end computer resource consumption of a business application workflow in an enterprise system.
2. Description of the Related Art
A business application may be viewed directly with an End User perspective, or alternatively viewed indirectly based on computer resource consumption of the corresponding computer programs that deliver the functions to fulfill the goals of the business application.
Examples of the direct view may include: a corporate payroll application, a catalog order application, an insurance claims application, and/or a bank accounts update application. These example business applications have natural business units such as number of employees for the corporate payroll application, number of catalog orders for the catalog order application, number of claims for the insurance claims application, and number of accounts for the bank accounts update application.
In contrast, the computer resource consumption view may be composed of the underlying computer programs for the business application, and the computer resource usage of the underlying computer programs. Typical examples of computer resources may include: CPU usage, I/O activities on various disks and/or other I/O devices (e.g., tapes), database accesses, memory usage, network bandwidth, network latency, and/or other software serialization or synchronization delays. Looking at the computer resource consumption view, the business application is represented piecemeal by a composite group of “units of work” executing in one or more heterogeneous computers that may be linked in a Parallel Sysplex or LAN/WAN network. The most common “units of work” are as follows: processes and threads; program names and executable names; transactions; GroupWare/MiddleWare; Enterprise Resource Planning (ERP); Customer Relationship Management (CRM); messages; network packets; computer jobs and tasks; performance groups (e.g., for computers running Compatibility Mode under the OS/390 operating system); service class, service class periods, and report classes (e.g., for computers running the Goal Mode under the OS/390 operating system).
Although a business application is typically perceived as a single entity by end users, it may be indirectly represented by a multi-faceted amalgamation of disjointed and heterogeneous computers (possibly running different operating systems and platforms), network links/routers, a diverse group of software constructs and their computer resource consumption. The origin of this indirect view is both historical and out of necessity. Current monitors and capacity planning products are by and large server-centric or network-centric. The data collection process is typically a bottom-up process starting with the kernel of the operating system in each node/system. Thus, during the past two decades, almost all commercially available tools have been server-centric and/or system hardware oriented. While this approach has proven to be very effective for real-time monitors to manage server availability, it falls short in meeting the fundamental requirements for client/server application management tools. One challenge is the arduous task of reconciling the business view with the indirect computer resource view by identifying all the piecemeal (disjoint) computer components (both hardware and software) for the business application. With traditional platform-specific products, each piecemeal component is analyzed individually (typically with each analysis using different tools). The end user typically must manually correlate the individual analysis results to form a business application end-to-end view. This method requires high maintenance, is unscalable, and is error-prone.
A second shortcoming of commercially available server-centric application management tools is the lack of an enterprise application workflow view. This limitation first becomes apparent with the emergence of client/server mission-critical applications. The concern over this shortfall is steadily gaining momentum. The advent of the World Wide Web and the exponential growth of the Internet have brought sweeping changes to Web-enabled mission-critical applications. One of the most distinctive differences between a Web-enabled client/server application and its traditional counterpart is the performance expectation of end users. As dissatisfied consumers are only a “click” away from switching to a business's competitor, it becomes clear that the mantra of successful e-Business applications is the focus on the end user experience. It is inevitable that focusing on the end user experience will change not only the fundamental way corporations do business, but also capacity planning and performance-assurance strategies for Web-enabled applications. An expanded information technology model known as e-transaction processing (first introduced by the IBM e-Business Group) begins to address the growing business need for end-to-end, integrated, and complex solutions. As used herein, e-transaction processing is characterized as the technology infrastructure that enables the transformation and integration of end-to-end business processes using Internet technologies. E-transaction processing is an evolving e-business requirement aimed at providing the highest levels of customer satisfaction. E-transaction processing may exploit new technologies that recognize the heterogeneous nature of any e-business and may provide the means of tying together existing, cross-platform components.
We are at a turning point in computing history. Businesses are rapidly evolving from Online Transaction Processing (OLTP), the widely used computing model that underlies most current mission-critical business applications, to e-transaction Processing, a new model for Web-enabled mission-critical e-business applications.
In a typical OLTP environment (see FIG. 1), multiple disjoint intervention points are involved to coordinate workflow and individual tasks along the path of a complete business transaction. However, in an e-transaction processing model, shown in FIG. 2, all of those individual, separate tasks may be integrated into a streamlined process with less manual intervention. Transaction closure may be reached much faster as customers and businesses are provided with end-to-end “self service” at their convenience. What previously might have involved several different (piecemeal and disjointed) points of intervention, now becomes one seamless business process. The business process must be able to integrate the entire value chain, providing interoperability among heterogeneous systems.
As previously noted, traditional performance management tools are almost always server-centric and track the resource consumption of different components piecemeal. Thus, the burden of managing the single entity of a business application through the eyes of these disjoint piecemeal components is on the end users. Moreover, any capacity-planning “what-if” scenario for the business application can only be indirectly formulated in terms of the individual underlying components. For example, if Corporation ABC is planning to merge with another company, an immediate capacity-planning scenario may likely be: “What is the new performance implication and resource requirements if the corporate Payroll application will grow by 50%?” Without a direct Business Application View and its workflow in traditional server-centric tools, this basic question may only be addressed through an indirect and piecemeal approach. Not only is this a fragmented and labor-intensive process, it seldom delivers the complete answers necessary to meet business needs. Thus, it is desirable to empower the traditional server-centric capacity planning strategy to focus on the end-to-end business application view for e-transaction performance management.